home *** CD-ROM | disk | FTP | other *** search
- ;* RAWFILE.INC
- ;*
- ;* Raw file I/O for MIDAS Sound System
- ;*
- ;* $Id: rawfile.inc,v 1.3 1997/01/16 18:41:59 pekangas Exp $
- ;*
- ;* Copyright 1996,1997 Housemarque Inc.
- ;*
- ;* This file is part of the MIDAS Sound System, and may only be
- ;* used, modified and distributed under the terms of the MIDAS
- ;* Sound System license, LICENSE.TXT. By continuing to use,
- ;* modify or distribute this file you indicate that you have
- ;* read the license and understand and accept it fully.
- ;*
-
-
- ;/***************************************************************************\
- ;* struct rfFile
- ;* -------------
- ;* Description: File state structure
- ;\***************************************************************************/
-
- STRUC rfFile
- D_int handle
- ENDS
-
-
-
- ;/***************************************************************************\
- ;* typedef rfHandle
- ;* ----------------
- ;* Description: Raw file I/O file handle
- ;\***************************************************************************/
-
- TYPEDEF rfHandle dword
-
-
-
-
- ;/***************************************************************************\
- ;* enum rfOpenMode
- ;* ---------------
- ;* Description: File opening mode. Used by rfOpen()
- ;\***************************************************************************/
-
- ENUM rfOpenMode \
- rfOpenRead = 1, \ ; open file for reading
- rfOpenWrite = 2, \ ; open file for writing
- rfOpenReadWrite = 3 ; open file for both reading and
- ; writing
-
-
-
- ;/***************************************************************************\
- ;* enum rfSeekMode
- ;* ---------------
- ;* Description: File seeking mode. Used by rfSeek()
- ;\***************************************************************************/
-
- ENUM rfSeekMode \
- rfSeekAbsolute = 1, \ ; seek to an absolute position from
- \ ; the beginning of the file
- rfSeekRelative = 2, \ ; seek to a position relative to
- \ ; current position
- rfSeekEnd = 3 ; seek relative to the end of file
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfOpen(char *fileName, int openMode, rfHandle *file);
- ;*
- ;* Description: Opens a file for reading or writing
- ;*
- ;* Input: char *fileName name of file
- ;* int openMode file opening mode, see enum rfOpenMode
- ;* rfHandle *file pointer to file handle
- ;*
- ;* Returns: MIDAS error code.
- ;* File handle is stored in *file.
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfOpen : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfClose(rfHandle file);
- ;*
- ;* Description: Closes a file opened with rfOpen().
- ;*
- ;* Input: rfHandle file handle of an open file
- ;*
- ;* Returns: MIDAS error code
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfClose : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfGetSize(rfHandle file, long *fileSize);
- ;*
- ;* Description: Get the size of a file
- ;*
- ;* Input: rfHandle file handle of an open file
- ;* ulong *fileSize pointer to file size
- ;*
- ;* Returns: MIDAS error code.
- ;* File size is stored in *fileSize.
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfGetSize : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfRead(rfHandle file, void *buffer, ulong numBytes);
- ;*
- ;* Description: Reads binary data from a file
- ;*
- ;* Input: rfHandle file file handle
- ;* void *buffer reading buffer
- ;* ulong numBytes number of bytes to read
- ;*
- ;* Returns: MIDAS error code.
- ;* Read data is stored in *buffer, which must be large enough
- ;* for it.
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfRead : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfWrite(rfHandle file, void *buffer, ulong numBytes);
- ;*
- ;* Description: Writes binary data to a file
- ;*
- ;* Input: rfHandle file file handle
- ;* void *buffer pointer to data to be written
- ;* ulong numBytes number of bytes to write
- ;*
- ;* Returns: MIDAS error code
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfWrite : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfSeek(rfHandle file, long newPosition, int seekMode);
- ;*
- ;* Description: Seeks to a new position in file. Subsequent reads and writes
- ;* go to the new position.
- ;*
- ;* Input: rfHandle file file handle
- ;* long newPosition new file position
- ;* int seekMode file seek mode, see enum rfSeekMode
- ;*
- ;* Returns: MIDAS error code
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfSeek : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfGetPosition(rfHandle file, long *position);
- ;*
- ;* Description: Reads the current position in a file
- ;*
- ;* Input: rfHandle file file handle
- ;* long *position pointer to file position
- ;*
- ;* Returns: MIDAS error code.
- ;* Current file position is stored in *position.
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfGetPosition : _funct
-
-
-
-
- ;/***************************************************************************\
- ;*
- ;* Function: int rfFileExists(char *fileName, int *exists);
- ;*
- ;* Description: Checks if a file exists or not
- ;*
- ;* Input: char *fileName file name, ASCIIZ
- ;* int *exists pointer to file exists status
- ;*
- ;* Returns: MIDAS error code.
- ;* *exists contains 1 if file exists, 0 if not.
- ;*
- ;\***************************************************************************/
-
- GLOBAL LANG rfFileExists : _funct
-
-
-
-
- ;/***************************************************************************\
- ;* enum rfFunctIDs
- ;* ---------------
- ;* Description: ID numbers for raw file I/O functions
- ;\***************************************************************************/
-
- ENUM rfFunctIDs \
- ID_rfOpen = ID_rf, \
- ID_rfClose, \
- ID_rfGetSize, \
- ID_rfRead, \
- ID_rfWrite, \
- ID_rfSeek, \
- ID_rfGetPosition, \
- ID_rfFileExists
-
-
- ;* $Log: rawfile.inc,v $
- ;* Revision 1.3 1997/01/16 18:41:59 pekangas
- ;* Changed copyright messages to Housemarque
- ;*
- ;* Revision 1.2 1996/05/30 22:38:46 pekangas
- ;* no changes?
- ;*
- ;* Revision 1.1 1996/05/22 20:49:33 pekangas
- ;* Initial revision
- ;*